/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package upeu.cepre.business;

import java.sql.*;
import java.util.AbstractList;
import java.util.ArrayList;
import java.util.List;
import upeu.cepre.model.Detalleperiodoalumno;
import upeu.cepre.model.Trabajador;
import upeu.cepre.util.DataBaseConexion;

public class TrabajadorManager {

    Trabajador to = new Trabajador();
    List<Trabajador> listTrabajador = new ArrayList<Trabajador>();

    public List<Trabajador> Report() {

        try {

            Connection connection;
            connection = DataBaseConexion.getConexion();
            Statement statement = connection.createStatement();
            PreparedStatement prepareestatemente = connection.prepareStatement("SELECT * FROM  trabajador");
            //prepareestatemente.setString(1, periodo);
            ResultSet rs = prepareestatemente.executeQuery();

            while (rs.next()) {

                Trabajador to = new Trabajador();

                to.setIdTrabajador(rs.getString("idTrabajador"));
                to.setNombre(rs.getString("nombre"));
                to.setApellidoPaterno(rs.getString("apellidoPaterno"));
                to.setApellidoMaterno(rs.getString("apellidoMaterno"));
                to.setDireccion(rs.getString("direccion"));
                to.setDni(rs.getString("dni"));
                to.setFechaNacimiento(rs.getString("fechaNacimiento"));
                to.setTelefono(rs.getString("telefono"));
                to.setUsuario(rs.getString("usuario"));
                to.setContraseña(rs.getString("contraseña"));
                to.setEstado(rs.getString("estado"));
                to.setSexo(rs.getString("sexo"));
                to.setEstadoCivil(rs.getString("estadoCivil"));
                to.setEmail(rs.getString("email"));
                to.setNacionalidad(rs.getString("Nacionalidad"));

                listTrabajador.add(to);

            }
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return listTrabajador;
    }

// public void Insert(){}
// public void Update(){}
// public void Delete(){}
     /*
     * Metodos Complementarios
     */
 public Trabajador FindById(String IdTrabajador) {

        try {
            Connection connection;
            connection = DataBaseConexion.getConexion();
            PreparedStatement preparedStatement = connection.prepareStatement("select * from trabajador where idTrabajador=?");
            preparedStatement.setString(1, IdTrabajador);
            ResultSet rs = preparedStatement.executeQuery();

            if (rs.next()) {

                to.setIdTrabajador(rs.getString("idTrabajador"));
                to.setNombre(rs.getString("nombre"));
                to.setApellidoPaterno(rs.getString("apellidoPaterno"));
                to.setApellidoMaterno(rs.getString("apellidoMaterno"));
                to.setDireccion(rs.getString("direccion"));
                to.setDni(rs.getString("dni"));
                to.setFechaNacimiento(rs.getString("fechaNacimiento"));
                to.setTelefono(rs.getString("telefono"));
                to.setUsuario(rs.getString("usuario"));
                to.setContraseña(rs.getString("contraseña"));
                to.setEstado(rs.getString("estado"));
                to.setSexo(rs.getString("sexo"));
                to.setEstadoCivil(rs.getString("estadoCivil"));
                to.setEmail(rs.getString("email"));
                to.setNacionalidad(rs.getString("Nacionalidad"));
            }
            connection.close();
            preparedStatement.close();
            rs.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return to;
    }
//  public void ObtenerId(){}
    public Trabajador FindByUser(String User) {

        try {
            Connection connection;
            connection = DataBaseConexion.getConexion();
            PreparedStatement preparedStatement = connection.prepareStatement("select * from trabajador where usuario=?");
            preparedStatement.setString(1, User);
            ResultSet rs = preparedStatement.executeQuery();

            if (rs.next()) {

                to.setIdTrabajador(rs.getString("idTrabajador"));
                to.setNombre(rs.getString("nombre"));
                to.setApellidoPaterno(rs.getString("apellidoPaterno"));
                to.setApellidoMaterno(rs.getString("apellidoMaterno"));
                to.setDireccion(rs.getString("direccion"));
                to.setDni(rs.getString("dni"));
                to.setFechaNacimiento(rs.getString("fechaNacimiento"));
                to.setTelefono(rs.getString("telefono"));
                to.setUsuario(rs.getString("usuario"));
                to.setContraseña(rs.getString("contraseña"));
                to.setEstado(rs.getString("estado"));
                to.setSexo(rs.getString("sexo"));
                to.setEstadoCivil(rs.getString("estadoCivil"));
                to.setEmail(rs.getString("email"));
                to.setNacionalidad(rs.getString("Nacionalidad"));
            }
            connection.close();
            preparedStatement.close();
            rs.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return to;
    }
}